#pragma once
#include "LeftCenterRight.h"

namespace OpenDrive {

	class LaneSection
	{
	public:
		LaneSection(float s, std::string singleSide = "");
		~LaneSection();
		Lane& getLaneByLaneId(int laneId);
		bool laneExist(int laneId)const;
		LeftCenterRight& getLeft();
		LeftCenterRight& getCenter();
		LeftCenterRight& getRight();
		void setLeft(const LeftCenterRight &l);
		void setCenter(const LeftCenterRight &c);
		void setRight(const LeftCenterRight &r);
		void setSingleSide(std::string ss);
		float getS() const;
		std::string getSingleSide() const;
	private:
		LeftCenterRight _left;
		LeftCenterRight _center;
		LeftCenterRight _right;
		float s;
		std::string singleSide;
	};

}